/** @var array[] */
protected static $data = [];
+ public function __construct( array $params ) {
+ parent::__construct( $params );
+
+ $this->dupCache = new HashBagOStuff();
+ }
+
/**
* @see JobQueue::doBatchPush
*
foreach ( $jobs as $job ) {
if ( $job->ignoreDuplicates() ) {
- $sha1 = Wikimedia\base_convert(
- sha1( serialize( $job->getDeduplicationInfo() ) ),
- 16, 36, 31
- );
+ $sha1 = sha1( serialize( $job->getDeduplicationInfo() ) );
if ( !isset( $unclaimed[$sha1] ) ) {
$unclaimed[$sha1] = $job;
}
$job = $this->jobFromSpecInternal( $spec );
end( $claimed );
- $job->metadata['claimId'] = key( $claimed );
+ $job->setMetadata( 'claimId', key( $claimed ) );
return $job;
}
}
$claimed =& $this->getQueueData( 'claimed' );
- unset( $claimed[$job->metadata['claimId']] );
+ $job->setMetadata( 'claimId', null );
}
/**
* @see JobQueue::doDelete
*/
protected function doDelete() {
- if ( isset( self::$data[$this->type][$this->wiki] ) ) {
- unset( self::$data[$this->type][$this->wiki] );
+ if ( isset( self::$data[$this->type][$this->domain] ) ) {
+ unset( self::$data[$this->type][$this->domain] );
if ( !self::$data[$this->type] ) {
unset( self::$data[$this->type] );
}
* @return mixed
*/
private function &getQueueData( $field, $init = null ) {
- if ( !isset( self::$data[$this->type][$this->wiki][$field] ) ) {
+ if ( !isset( self::$data[$this->type][$this->domain][$field] ) ) {
if ( $init !== null ) {
- self::$data[$this->type][$this->wiki][$field] = $init;
+ self::$data[$this->type][$this->domain][$field] = $init;
} else {
return $init;
}
}
- return self::$data[$this->type][$this->wiki][$field];
+ return self::$data[$this->type][$this->domain][$field];
}
}